export interface IEvents {
	[event: string]: string;
}

export interface IActions {
	[atom: string]: (...args: any[]) => Promise<unknown> | unknown;
}

export interface ICommonParams {
	body?: any;
	cookie: {
		[name: string]: string;
	};
	data: any;
	headers: {
		[key: string]: string;
	};
	params: any;
	query: any;
	remote_address: string;
	spaceid: string;
	url: string;
	[key: string]: any;
}

export interface IHeaders {
	actionid: string;
	messagetype: string;
	sessionid: string;
	spaceid: string;
}

export interface IWebResult {
	data?: any;
	buff?: Buffer;
	cookie?: {
		[name: string]: string;
	};
	content_type?: string;
	headers?: {
		[key: string]: string;
	};
	attachment?: string;
	redirect?: string;
	status_code?: number;
}
